<html>
<style>
  table, th, td {
     border: 1px solid rgb(200,200,200);
     border-collapse: collapse;
     }
  table {
     table-layout: fixed;
     width: 1900px;
     }
  td {
     overflow-x: auto;
     }
  th, td {
    padding: 15px;
    text-align: left;
    vertical-align: middle;
    }
  .comments {
    color: #292;
    }
  .source-code {
    color: #22F;
    }
  .interface-parent {
    color: #AAA;
    }
  .interface-name {
    color: #000;
    }
  .check-mark {
    text-align: center;
    }
</style>
<body>
<br>

<h1>DJI Mobile SDK UX SDK 4.5.1 to 4.6 Differences</h1>

<br>

<h2>APIs removed from 4.5.1</h2>

<table class="diff-table"><tr valign="top"><td width=15%><font color="#000">Parent and Name</font></td><td width=15%><font color="#000">Code</font></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">showAllFlyZones</span></td><td width=15%><span class="source-code">@property BOOL showAllFlyZones</span></td></tr></table><br>

<h2>APIs added to 4.6</h2>

<table class="diff-table"><tr valign="top"><td width=15%><font color="#000">Parent and Name</font></td><td width=15%><font color="#000">Code</font></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXCameraConfigSSDWidget.h: </span><span class="interface-name">DUXCameraConfigSSDWidget</span></td><td width=15%><span class="source-code">@interface DUXCameraConfigSSDWidget : DUXWidget</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXCameraConfigSSDWidget.h: DUXCameraConfigSSDWidget.</span><span class="interface-name">preferredCameraIndex</span></td><td width=15%><span class="source-code">@property (nonatomic) NSUInteger preferredCameraIndex</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXColorWaveformWidget.h: </span><span class="interface-name">DUXColorWaveformWidget</span></td><td width=15%><span class="source-code">@interface DUXColorWaveformWidget : DUXWidget</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXColorWaveformWidget.h: DUXColorWaveformWidget.</span><span class="interface-name"> isSupported</span></td><td width=15%><span class="source-code">+ (BOOL) isSupported</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXCompassWidget.h: DUXCompassWidget.</span><span class="interface-name">locationManagerAccuracy</span></td><td width=15%><span class="source-code">@property(assign, nonatomic) CLLocationAccuracy locationManagerAccuracy</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXDashboardWidget.h: DUXDashboardWidget.</span><span class="interface-name">locationManagerAccuracy</span></td><td width=15%><span class="source-code">@property(assign, nonatomic) CLLocationAccuracy locationManagerAccuracy</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapViewController.h: DUXMapViewController.</span><span class="interface-name">showFlyZoneLegend</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) BOOL showFlyZoneLegend</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapAnnotationType.</span><span class="interface-name">DUXMapAnnotationTypeCustomUnlockedFlyZones</span></td><td width=15%><span class="source-code">    DUXMapAnnotationTypeCustomUnlockedFlyZones</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapAnnotationType.</span><span class="interface-name">DUXMapAnnotationTypeEligibleFlyZones</span></td><td width=15%><span class="source-code">    DUXMapAnnotationTypeEligibleFlyZones</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapAnnotationType.</span><span class="interface-name">DUXMapAnnotationTypeUnlockedFlyZones</span></td><td width=15%><span class="source-code">    DUXMapAnnotationTypeUnlockedFlyZones</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: </span><span class="interface-name">DUXMapVisibleFlyZones</span></td><td width=15%><span class="source-code">typedef NS_OPTIONS(NSUInteger, DUXMapVisibleFlyZones) </span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapVisibleFlyZones.</span><span class="interface-name">DUXMapVisibleFlyZonesAuthorization</span></td><td width=15%><span class="source-code">    DUXMapVisibleFlyZonesAuthorization = 1 &lt;&lt; 1</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapVisibleFlyZones.</span><span class="interface-name">DUXMapVisibleFlyZonesEnhancedWarning</span></td><td width=15%><span class="source-code">    DUXMapVisibleFlyZonesEnhancedWarning  = 1 &lt;&lt; 3</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapVisibleFlyZones.</span><span class="interface-name">DUXMapVisibleFlyZonesNone</span></td><td width=15%><span class="source-code">    DUXMapVisibleFlyZonesNone = 0</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapVisibleFlyZones.</span><span class="interface-name">DUXMapVisibleFlyZonesRestricted</span></td><td width=15%><span class="source-code">    DUXMapVisibleFlyZonesRestricted = 1 &lt;&lt; 0</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapVisibleFlyZones.</span><span class="interface-name">DUXMapVisibleFlyZonesWarning</span></td><td width=15%><span class="source-code">    DUXMapVisibleFlyZonesWarning  = 1 &lt;&lt; 2</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">changeAnnotationOfType:toCustomImage:withCenterOffset</span></td><td width=15%><span class="source-code">- (void)changeAnnotationOfType:(DUXMapAnnotationType)annotationType toCustomImage:(nonnull UIImage *)image withCenterOffset:(CGPoint)centerOffset</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">directionToHomeStrokeColor</span></td><td width=15%><span class="source-code">@property (nonatomic, strong, nonnull) UIColor *directionToHomeStrokeColor</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">directionToHomeStrokeWidth</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) CGFloat directionToHomeStrokeWidth</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">flightPathStrokeColor</span></td><td width=15%><span class="source-code">@property (nonatomic, strong, nonnull) UIColor *flightPathStrokeColor</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">flightPathStrokeWidth</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) CGFloat flightPathStrokeWidth</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">flyZoneOverlayAlphaForFlyZoneCategory</span></td><td width=15%><span class="source-code">- (CGFloat)flyZoneOverlayAlphaForFlyZoneCategory:(DJIFlyZoneCategory)category</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">flyZoneOverlayColorForFlyZoneCategory</span></td><td width=15%><span class="source-code">- (nonnull UIColor *)flyZoneOverlayColorForFlyZoneCategory:(DJIFlyZoneCategory)category</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">flyZoneOverlayBorderWidth</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) CGFloat flyZoneOverlayBorderWidth</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">isMapCameraLockedOnHomePoint</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) BOOL isMapCameraLockedOnHomePoint</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">maximumHeightFlyZoneOverlayAlpha</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) CGFloat maximumHeightFlyZoneOverlayAlpha</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">maximumHeightFlyZoneOverlayColor</span></td><td width=15%><span class="source-code">@property (nonatomic, strong, nonnull) UIColor *maximumHeightFlyZoneOverlayColor</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">setFlyZoneOverlayAlpha:forFlyZoneCategory</span></td><td width=15%><span class="source-code">- (void)setFlyZoneOverlayAlpha:(CGFloat)alpha
            forFlyZoneCategory:(DJIFlyZoneCategory)category</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">setFlyZoneOverlayColor:forFlyZoneCategory</span></td><td width=15%><span class="source-code">- (void)setFlyZoneOverlayColor:(nullable UIColor *)color
            forFlyZoneCategory:(DJIFlyZoneCategory)category</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">tapToUnlockEnabled</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) BOOL tapToUnlockEnabled</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">unlockedFlyZoneOverlayAlpha</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) CGFloat unlockedFlyZoneOverlayAlpha</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">unlockedFlyZoneOverlayColor</span></td><td width=15%><span class="source-code">@property (nonatomic, strong, nonnull) UIColor *unlockedFlyZoneOverlayColor</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXMapWidget.h: DUXMapWidget.</span><span class="interface-name">visibleFlyZones</span></td><td width=15%><span class="source-code">@property (nonatomic, assign) DUXMapVisibleFlyZones visibleFlyZones</span></td></tr><tr valign="top"><td width=15%><span class="interface-parent">DUXDistanceRCWidget.h: DUXDistanceRCWidget.</span><span class="interface-name">locationManagerAccuracy</span></td><td width=15%><span class="source-code">@property(assign, nonatomic) CLLocationAccuracy locationManagerAccuracy</span></td></tr></table><p style="font-size:50%; color:white">cc25e28 0800c85 </p></body>
</html>

